﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace KPIS.GERP.GHRMS.MODEL
{
    public class AbsenceInfo : RecordInfo
    {
        private int absence_seq;
        private AbsenceTypeInfo absence_type_seq;
        private EmployeeInfo emp_seq;
        private Nullable<DateTime> start_date;
        private string start_time; // COMMENT 'ช่วงเวลา M = ลาเช้า , A = ลาบ่าย ',
        private Nullable<DateTime> end_date;
        private string end_time;
        private decimal count_date;
        private string contact_address;
        private string status;
        private string approved_by;
        private string approved_position;
        private Nullable<DateTime> approved_date;
        private Nullable<DateTime> created_when;

        public AbsenceInfo()
        { 
        }
        public AbsenceInfo(int Sequence)
        {
            this.Sequence = Sequence;
        }
        public AbsenceInfo(int Sequence, AbsenceTypeInfo AbsenceType, EmployeeInfo Employee, Nullable<DateTime> StartDate
            , string StartTime, Nullable<DateTime> EndDate, string EndTime, decimal CountDate, string ContactAddress
            , string Status, string ApprovedBy, string ApprovedPosition, Nullable<DateTime> ApprovedDate
            , string Remarks, string RecordStatus, Nullable<int> CreatedBy, Nullable<int> UpdatedBy)
        {
            this.Sequence = Sequence;
            this.AbsenceType = AbsenceType;
            this.Employee = Employee;
            this.StartDate = StartDate;
            this.StartTime = StartTime;
            this.EndDate = EndDate;
            this.EndTime = EndTime;
            this.CountDate = CountDate;
            this.ContactAddress = ContactAddress;
            this.Remarks = Remarks;
            this.Status = Status;
            this.ApprovedBy = ApprovedBy;
            this.ApprovedPosition = ApprovedPosition;
            this.ApprovedDate = ApprovedDate;
            this.RecordStatus = RecordStatus;
            this.CreatedBy = CreatedBy;
            this.UpdatedBy = UpdatedBy;
        }
        public int Sequence
        {
            get { return absence_seq; }
            set { absence_seq = value; }
        }
        public AbsenceTypeInfo AbsenceType
        {
            get { return absence_type_seq; }
            set { absence_type_seq = value; }
        }
        public EmployeeInfo Employee
        {
            get { return emp_seq; }
            set { emp_seq = value; }
        }
        public Nullable<DateTime> StartDate
        {
            get { return start_date; }
            set { start_date = value; }
        }
        public string StartTime
        {
            get { return start_time; }
            set { start_time = value; }
        }
        public Nullable<DateTime> EndDate
        {
            get { return end_date; }
            set { end_date = value; }
        }
        public string EndTime
        {
            get { return end_time; }
            set { end_time = value; }
        }
        public decimal CountDate
        {
            get { return count_date; }
            set { count_date = value; }
        }
        public string ContactAddress
        {
            get { return contact_address; }
            set { contact_address = value; }
        }
        public string Status
        {
            get { return status; }
            set { status = value; }
        }
        public string ApprovedBy
        {
            get { return approved_by; }
            set { approved_by = value; }
        }
        public string ApprovedPosition
        {
            get { return approved_position; }
            set { approved_position = value; }
        }
        public Nullable<DateTime> ApprovedDate
        {
            get { return approved_date; }
            set { approved_date = value; }
        }
        public Nullable<DateTime> CreatedWhen
        {
            get { return created_when; }
            set { created_when = value; }
        }


    }
}
